Method and apparatus for efficient delivery of source and forward error correction streams in systems supporting mixed unicast multicast transmission

ABSTRACT

A method, apparatus and computer program product receive an application flow comprising a source flow and a supplementary flow from a core network. The method, apparatus and computer program product receive a flow payload indication from the core network. The method, apparatus and computer program product determine whether the application flow is to be transmitted via a unicast transmission or a multicast transmission. The method, apparatus and computer program product determine whether the supplementary flow is droppable based on the flow payload indication and whether the application flow is to be transmitted via a unicast transmission or a multicast transmission. The method, apparatus and computer program product cause only the source flow to be transmitted in a circumstance where the supplementary flow is droppable.

TECHNICAL FIELD

An example embodiment relates generally to a method for operating anetwork entity for a cellular radio communications network and to anetwork entity for a cellular radio communications network.

BACKGROUND

In traditional wireless communication networks, if there is commoncontent intended for mass delivery, the content can be delivered usingmulticast/broadcast since there are separate and dedicated user planenodes and entities handling such traffic flows efficiently. Thestandardization efforts for fifth generation (5G) systems have alreadystarted as part of 3^(rd) Generation Partnership Project (3GPP)Release-14, with a diverse set of requirements ranging from very highdata rates up to 20 Gigabits per second (Gbps) to ultra-reliablecommunications with air interface packet error probability down to10{circumflex over ( )}−5 along with ultra-low-latency systems of 1 msend-to-end latency. 5G systems may support multicast/broadcast andunicast.

In order to reach such a packet error probability, forward errorcorrection (FEC) coding is used at various layers of the protocol stackin communication systems. 4G systems support Evolved MultimediaBroadcast Multicast Services (eMBMS) which supports multicast andbroadcast along with unicast. eMBMS utilizes File Delivery overUnidirectional Transport (FLUTE) for various MBMS user services such asProgressive Download and Dynamic Adaptive Streaming over HyperTextTransfer Protocol (HTTP) (3GP-DASH), file download according to 3GPPtechnical specification (TS) 26.346, or the like. FLUTE builds on top ofasynchronous layer coding (ALC) which combines layered coding transport,congestion control and forward error correction (FEC) building blocks.

A general FEC framework supports applying FEC to arbitrary packet flowsover unreliable transport and is primarily intended for real-time, orstreaming, media data.

Some configurations of radio access networks (RAN) in 5G supportautonomous determination to use unicast or multicast/broadcasttransmission for an efficient transmission of multicast data overunicast radio bearers. A RAN may use different radio link control (RLC)entities for unicast and multicast/broadcast transmission and may use aswitching function to select different RLC entities.

However, even though the RAN function may select whether to transmitmulticast data using unicast or multicast/broadcast transmissions, theRAN may transmit the same data including FEC regardless of whetherunicast or multicast/broadcast is selected. Unicast andmulticast/broadcast transmissions may have different configurations andapplying the same FEC may be inefficient. For example, for unicasttransmission, hybrid automatic repeat request (HARQ) or radio linkcontrol (RLC) retransmission may be used. These lower layerretransmissions are often more efficient compared to using higher layerFEC, and require less bits to be transmitted over the air to achieve thesame result. Therefore, applying higher layer FEC in this case would beredundant and inefficient.

BRIEF SUMMARY

A method, apparatus and computer program product are provided inaccordance with an example embodiment to operate a network entity for acellular radio communications network and to a network entity for acellular radio communications network, in particular, to operate a RANfunction in a 5G network that applies more efficient error correctionmechanism such as forward error correction and/or retransmission basedon whether unicast or multicast/broadcast transmission is utilized. Forexample, in some embodiments, a RAN function may not transmit higherlayer FEC (application), if more efficient FEC is applied.

In one example embodiment, a method is provided that includes receivingan application flow comprising a source flow and a supplementary flowfrom a core network. The method further includes receiving a flowpayload indication from the core network. The method further includesdetermining whether the application flow is to be transmitted via aunicast transmission or a multicast transmission. The method furtherincludes determining whether the supplementary flow is droppable basedon the flow payload indication and whether the application flow is to betransmitted via a unicast transmission or a multicast transmission. Themethod further includes in a circumstance where the supplementary flowis droppable, causing only the source flow to be transmitted.

In some implementations of such a method, the application flow isreceived from a user plane function (UPF) in the core network. In someembodiments, the supplementary flow is droppable if the supplementaryflow is a forward error correction repair flow and if the applicationflow is to be transmitted via a unicast transmission. In someembodiments, the unicast transmission utilizes hybrid automatic repeatrequest (HARQ) retransmission or radio link control (RLC)retransmission. In some embodiments, the flow payload indicationcomprises one or more policy and charging control (PCC) rules providedby a policy control function.

In another example embodiment, an apparatus is provided that includes atleast one processor and at least one memory including computer programcode for one or more programs with the at least one memory and thecomputer program code configured to, with the at least one processor,cause the apparatus at least to receive an application flow comprising asource flow and a supplementary flow from a core network. The computerprogram code is further configured to, with the at least one processor,cause the apparatus to receive flow payload indication from the corenetwork. The computer program code is further configured to, with the atleast one processor, cause the apparatus to determine whether theapplication flow is to be transmitted via a unicast transmission or amulticast transmission. The computer program code is further configuredto, with the at least one processor, cause the apparatus to determinewhether the supplementary flow is droppable based on the flow payloadindication and whether the application flow is to be transmitted via aunicast transmission or a multicast transmission. The computer programcode is further configured to, with the at least one processor, causethe apparatus to transmit only the source flow in a circumstance wherethe supplementary flow is droppable.

In some implementations of such an apparatus, the application flow isreceived from a user plane function (UPF) in the core network. In someembodiments, the supplementary flow is droppable if the supplementaryflow is a forward error correction repair flow and if the applicationflow is to be transmitted via a unicast transmission. In someembodiments, the unicast transmission utilizes hybrid automatic repeatrequest (HARQ) retransmission or radio link control (RLC)retransmission. In some embodiments, the flow payload indicationcomprises one or more policy and charging control (PCC) rules providedby a policy control function.

In another example embodiment, a computer program product is providedthat includes at least one non-transitory computer-readable storagemedium having computer executable program code instructions storedtherein with the computer executable program code instructionscomprising program code instructions configured, upon execution, toreceive an application flow comprising a source flow and a supplementaryflow from a core network. The computer executable program codeinstructions comprise program code instructions that are furtherconfigured, upon execution, to receive flow payload indication from thecore network. The computer executable program code instructions compriseprogram code instructions that are further configured, upon execution,to determine whether the application flow is to be transmitted via aunicast transmission or a multicast transmission. The computerexecutable program code instructions comprise program code instructionsthat are further configured, upon execution, to determine whether thesupplementary flow is droppable based on the flow payload indication andwhether the application flow is to be transmitted via a unicasttransmission or a multicast transmission. The computer executableprogram code instructions comprise program code instructions that arefurther configured, upon execution, to transmit only the source flow ina circumstance where the supplementary flow is droppable.

In some implementations of such a computer program product, theapplication flow is received from a user plane function (UPF) in thecore network. In some embodiments, the supplementary flow is droppableif the supplementary flow is a forward error correction repair flow andif the application flow is to be transmitted via a unicast transmission.In some embodiments, the unicast transmission utilizes hybrid automaticrepeat request (HARQ) retransmission or radio link control (RLC)retransmission. In some embodiments, the flow payload indicationcomprises one or more policy and charging control (PCC) rules providedby a policy control function.

In another example embodiment, an apparatus is provided that includesmeans for receiving an application flow comprising a source flow and asupplementary flow from a core network. The apparatus further includesmeans for receiving a flow payload indication from the core network. Theapparatus further includes means for determining whether the applicationflow is to be transmitted via a unicast transmission or a multicasttransmission. The apparatus further includes means for determiningwhether the supplementary flow is droppable based on the flow payloadindication and whether the application flow is to be transmitted via aunicast transmission or a multicast transmission. The apparatus furtherincludes means for transmitting only the source flow in a circumstancewhere the supplementary flow is droppable.

In some implementations of such an apparatus, the application flow isreceived from a user plane function (UPF) in the core network. In someembodiments, the supplementary flow is droppable if the supplementaryflow is a forward error correction repair flow and if the applicationflow is to be transmitted via a unicast transmission. In someembodiments, the unicast transmission utilizes hybrid automatic repeatrequest (HARQ) retransmission or radio link control (RLC)retransmission. In some embodiments, the flow payload indicationcomprises one or more policy and charging control (PCC) rules providedby a policy control function.

BRIEF DESCRIPTION OF THE DRAWINGS

Having thus described certain example embodiments of the presentdisclosure in general terms, reference will hereinafter be made to theaccompanying drawings, which are not necessarily drawn to scale, andwherein:

FIG. 1 is a block diagram of an apparatus that may be specificallyconfigured in accordance with an example embodiment of the presentdisclosure;

FIG. 2 illustrates an architecture of a 5G radio protocol stack;

FIG. 3 illustrates a dataflow framework of a 5G system in accordancewith an example embodiment of the present disclosure;

FIG. 4 is an information flow diagram illustration for provisioning ofinformation between the entities in FIG. 3 in accordance with an exampleembodiment of the present disclosure;

FIGS. 5A and 5B illustrate delivery of data stream in a distributed RANand a centralized RAN in accordance with an example embodiment of thepresent disclosure;

FIGS. 6A and 6B illustrate an updated architecture of a 5G radioprotocol stack in accordance with an example embodiment of the presentdisclosure; and

FIG. 7 is a flowchart illustrating a set of operations performed, suchas by the apparatus of FIG. 1, in accordance with an example embodimentof the present disclosure.

DETAILED DESCRIPTION

Some embodiments will now be described more fully hereinafter withreference to the accompanying drawings, in which some, but not all,embodiments of the invention are shown. Indeed, various embodiments ofthe invention may be embodied in many different forms and should not beconstrued as limited to the embodiments set forth herein; rather, theseembodiments are provided so that this disclosure will satisfy applicablelegal requirements. Like reference numerals refer to like elementsthroughout. As used herein, the terms “data,” “content,” “information,”and similar terms may be used interchangeably to refer to data capableof being transmitted, received and/or stored in accordance withembodiments of the present invention. Thus, use of any such terms shouldnot be taken to limit the spirit and scope of embodiments of the presentinvention.

Additionally, as used herein, the term ‘circuitry’ refers to (a)hardware-only circuit implementations (e.g., implementations in analogcircuitry and/or digital circuitry); (b) combinations of circuits andcomputer program product(s) comprising software and/or firmwareinstructions stored on one or more computer readable memories that worktogether to cause an apparatus to perform one or more functionsdescribed herein; and (c) circuits, such as, for example, amicroprocessor(s) or a portion of a microprocessor(s), that requiresoftware or firmware for operation even if the software or firmware isnot physically present. This definition of ‘circuitry’ applies to alluses of this term herein, including in any claims. As a further example,as used herein, the term ‘circuitry’ also includes an implementationcomprising one or more processors and/or portion(s) thereof andaccompanying software and/or firmware. As another example, the term‘circuitry’ as used herein also includes, for example, a basebandintegrated circuit or applications processor integrated circuit for amobile phone or a similar integrated circuit in a server, a cellularnetwork device, other network device, and/or other computing device.

As defined herein, a “computer-readable storage medium,” which refers toa non-transitory physical storage medium (e.g., volatile or non-volatilememory device), can be differentiated from a “computer-readabletransmission medium,” which refers to an electromagnetic signal.

A method, apparatus and computer program product are provided inaccordance with an example embodiment to operate a network entity for acellular radio communications network and to a network entity for acellular radio communications network, in particular, to operate a RANfunction in a core network of a 5G network that applies more efficientFEC based on whether a unicast or multicast/broadcast transmission isutilized. Furthermore, a RAN function may not transmit higher layer FEC(application), if more efficient FEC is applied.

In order to embody the core network including a RAN and an access andmobility management function, an apparatus 10 is provided as shown, forexample, in FIG. 1. The apparatus may be embodied by any of a variety ofdifferent components such as different nodes of a 5G core networkinstance. As shown in FIG. 1, the apparatus of an example embodimentincludes, is associated with or is otherwise in communication with aprocessor 12, an associated memory 14 and a communication interface 16.

The processor 12 (and/or co-processors or any other circuitry assistingor otherwise associated with the processor) may be in communication withthe memory device 14 via a bus for passing information among componentsof the apparatus 10. The memory device may be non-transitory and mayinclude, for example, one or more volatile and/or non-volatile memories.In other words, for example, the memory device may be an electronicstorage device (e.g., a computer readable storage medium) comprisinggates configured to store data (e.g., bits) that may be retrievable by amachine (e.g., a computing device like the processor). The memory devicemay be configured to store information, data, content, applications,instructions, or the like for enabling the apparatus to carry outvarious functions in accordance with an example embodiment of thepresent disclosure. For example, the memory device could be configuredto buffer input data for processing by the processor. Additionally oralternatively, the memory device could be configured to storeinstructions for execution by the processor.

The apparatus 10 may, in some embodiments, be embodied in variouscomputing devices as described above. However, in some embodiments, theapparatus may be embodied as a chip or chip set. In other words, theapparatus may comprise one or more physical packages (e.g., chips)including materials, components and/or wires on a structural assembly(e.g., a baseboard). The structural assembly may provide physicalstrength, conservation of size, and/or limitation of electricalinteraction for component circuitry included thereon. The apparatus maytherefore, in some cases, be configured to implement an embodiment ofthe present invention on a single chip or as a single “system on achip.” As such, in some cases, a chip or chipset may constitute meansfor performing one or more operations for providing the functionalitiesdescribed herein.

The processor 12 may be embodied in a number of different ways. Forexample, the processor may be embodied as one or more of varioushardware processing means such as a coprocessor, a microprocessor, acontroller, a digital signal processor (DSP), a processing element withor without an accompanying DSP, or various other circuitry includingintegrated circuits such as, for example, an ASIC (application specificintegrated circuit), an FPGA (field programmable gate array), amicrocontroller unit (MCU), a hardware accelerator, a special-purposecomputer chip, or the like. As such, in some embodiments, the processormay include one or more processing cores configured to performindependently. A multi-core processor may enable multiprocessing withina single physical package. Additionally or alternatively, the processormay include one or more processors configured in tandem via the bus toenable independent execution of instructions, pipelining and/ormultithreading.

In an example embodiment, the processor 12 may be configured to executeinstructions stored in the memory device 14 or otherwise accessible tothe processor. Alternatively or additionally, the processor may beconfigured to execute hard coded functionality. As such, whetherconfigured by hardware or software methods, or by a combination thereof,the processor may represent an entity (e.g., physically embodied incircuitry) capable of performing operations according to an embodimentof the present disclosure while configured accordingly. Thus, forexample, when the processor is embodied as an ASIC, FPGA or the like,the processor may be specifically configured hardware for conducting theoperations described herein. Alternatively, as another example, when theprocessor is embodied as an executor of instructions, the instructionsmay specifically configure the processor to perform the algorithmsand/or operations described herein when the instructions are executed.However, in some cases, the processor may be a processor of a specificdevice (e.g., an image processing system) configured to employ anembodiment of the present invention by further configuration of theprocessor by instructions for performing the algorithms and/oroperations described herein. The processor may include, among otherthings, a clock, an arithmetic logic unit (ALU) and logic gatesconfigured to support operation of the processor.

The communication interface 16 may be any means such as a device orcircuitry embodied in either hardware or a combination of hardware andsoftware that is configured to receive and/or transmit data from/to anetwork. In this regard, the communication interface may include, forexample, an antenna (or multiple antennas) and supporting hardwareand/or software for enabling communications with a wirelesscommunication network. Additionally or alternatively, the communicationinterface may include the circuitry for interacting with the antenna(s)to cause transmission of signals via the antenna(s) or to handle receiptof signals received via the antenna(s). In some environments, thecommunication interface may alternatively or also support wiredcommunication. As such, for example, the communication interface mayinclude a communication modem and/or other hardware/software forsupporting communication via cable, digital subscriber line (DSL),universal serial bus (USB) or other mechanisms.

In traditional wireless communication networks, if there is commoncontent intended for mass delivery, it can be delivered usingmulticast/broadcast, since there are separate and dedicated user planenodes and entities handling such traffic flows efficiently. 5G systemsmay support multicast/broadcast and unicast. The standardization effortsfor fifth generation (5G) systems have already started as part of 3^(rd)Generation Partnership Project (3GPP) Release-14, with diverse set ofrequirements ranging from very high data rates up to 20 Gbps toultra-reliable communications with air interface packet errorprobability down to 10{circumflex over ( )}−5 along withultra-low-latency systems of 1 ms end-to-end latency.

In order to reach such a packet error probability, forward errorcorrection (FEC) coding is used at various layers of protocol stack incommunication systems. 4G systems support Evolved Multimedia BroadcastMulticast Services (eMBMS) which supports a multicast and broadcastalong with unicast. eMBMS utilizes File Delivery over UnidirectionalTransport (FLUTE) for various MBMS user services such as ProgressiveDownload and Dynamic Adaptive Streaming over HyperText Transfer Protocol(HTTP) (3GP-DASH), file download according to 3GPP technicalspecification (TS) 26.346, or the like. FLUTE builds on top ofasynchronous layer coding (ALC) which combines layered coding transport,congestion control and forward error correction (FEC) building blocks.

A general FEC framework supports applying FEC to arbitrary packet flowsover unreliable transport and is primarily intended for real-time, orstreaming, media data.

Some configurations of radio access networks (RAN) in 5G supportautonomous determination to use unicast or multicast/broadcasttransmission for an efficient transmission of multicast data overunicast radio bearers. A RAN may use different radio link control (RLC)entities for unicast and multicast/broadcast transmission and may use aswitching function to select different RLC entities.

However, even though a RAN function may select whether to transmitmulticast data using unicast or multicast/broadcast transmissions, a RANmay transmit the same data including FEC regardless of whether a unicastor multicast/broadcast is selected. Unicast and multicast/broadcasttransmissions may have different configurations and transmitting thesame data including FEC may be inefficient. For example, for unicasttransmission, hybrid automatic repeat request (HARQ) or radio linkcontrol (RLC) retransmission may be used. These lower layerretransmissions are often more efficient compared to using higher layerFEC, and require less bits to be transmitted over the air to achieve thesame result. Therefore, applying higher layer FEC in this case would beredundant and inefficient for a radio access network that istransmitting the data over-the-air using multicast rather than unicast.

Referring now to FIG. 2, FIG. 2 illustrates the architecture of a 5Gradio protocol stack. The radio protocol stack includes Service DataAdaptation Protocol (SDAP) layer 202, Packet Data Convergence Protocol(PDCP) layer 204, Radio Link Control (RLC) layer 206, and Media AccessControl (MAC) layer 208. In some embodiments, the SDAP layer 202 isresponsible for mapping between a Quality of Service (QoS) flow receivedand a data radio bearer, such as by using the QoS flow mapping 210.

In some embodiments, the PDCP layer 204 is responsible for multiplefunctions related to data transmission, such as header compression anddecompression, ciphering and deciphering, reordering and duplicatedetection, Protocol Data Unit (PDU) routing, and the like. The PDCPlayer comprises one or more PDCP entities 212N.

In some embodiments, the RLC layer 206 is responsible for transferringPDUs. The RLC layer 206 may also be responsible for error correction,concatenation, segmentation and reassembly of a RLC Service Data Unit(SDU), duplicate detection, and the like. The RLC layer includes one ormore RLC entities 216N. The RLC layer further includes a switchingfunction 214 that can select between unicast and multicast transportchannels and respective different RLC entities for a QoS flowtransmission.

In some embodiments, the MAC layer 208 is responsible for providing flowcontrol and multiplexing for the transmission medium, such as by usingscheduling/priority handling entity 218 and multiplexer (MUX) 220.Several RLC PDUs can be multiplexed into MAC transport blocks. The HARQentity 222 is responsible for invoking a HARQ process for transmissionwith a user equipment (UE). Such a HARQ process would ensure datatransmission integrity of the QoS flow.

Real-time Transport protocol (RTP) allows for retransmissions in RTP asa repair method for streaming media. Multiplexing of original andretransmission streams is achieved using session-multiplexing orsynchronization source (SSRC)-multiplexing. SSRC-multiplexing is usedonly for unicast sessions. For multicast sessions, session-multiplexingmust be used where RTP sessions for original and retransmission streamsare sent on different network addresses/ports. In a FEC framework, thesource and repair data may be multiplexed using RTP multiplexing. TheFEC framework output are FEC source and repair packets. The FECframework configuration information includes the definition of flows(e.g., port(s) and multicast address group(s)) for the FEC source andrepair packets. The source flow may be the same as application data unit(ADU) flow (e.g., User Datagram Protocol (UDP) source and target portsand source and target addresses of the Internet Protocol (IP) datagram)as if the FEC framework is not present.

Such applications of FEC to ADU flows increase the amount of userpayload a 5G network needs to transmit. FEC protects ADU flow againstpacket loss, which is inevitable in unidirectional communication.However, the RAN function selects whether to transmit multicast datausing unicast or multicast/broadcast transmissions, the RAN function maytransmit the same data including FEC regardless of whether unicast ormulticast/broadcast is selected. Unicast and multicast/broadcasttransmissions may have different configurations and transmitting the FECmay be inefficient. For example, for unicast transmission, hybridautomatic repeat request (HARQ) or radio link control (RLC)retransmission may be used. These lower layer retransmissions are oftenmore efficient compared to using higher layer FEC, and require fewerbits to be transmitted over the air to achieve the same result.Therefore, applying higher layer FEC in this case would be redundant andinefficient.

In some conventional implementations, even though RAN can select unicastor multicast/broadcast transmission for multicast QoS flows, the RANdoes not have information regarding whether a QoS flow is used forsource or FEC repair flow. Therefore, the FEC repair flow will betransmitted over unicast when transmission of a source flow only withlower layer retransmissions is more efficient because data packetintegrity may be achieved via more efficient means, such as a HARQretransmission.

FIG. 3 illustrates a dataflow framework of a 5G system in accordancewith an example embodiment of the present disclosure. As illustrated inFIG. 3, the dataflow framework includes an Application Function (AF)302, a User Plane Function (UPF) 304, a RAN 306, a Session ManagementFunction (SMF) 308, an Access and Mobility Management Function (AMF)310, and a policy control function (PCF) 312.

In some embodiments, the PDU session modification would be completed forthe purpose of creating a multicast context in the network. An N3 tunnelbetween the RAN and the UPF is established for the transport ofmulticast data (e.g., for IP multicast group). The RAN 306 can storeassociations between the multicast context and all PDU sessions forwhich Internet Group Management Protocol (IGMP)/multicast listenerreport (MLR) or other similar mechanisms triggered the PDU sessionmodification procedure to create the association with the multicastcontext. Thus, the RAN using the multicast context determines a set ofUEs to which the RAN may transmit the multicast data.

In some embodiments, the AF 302 invokes anNpcf_PolicyAuthorization_Create request to create an application sessioncontext at the PCF 312. As part of the request, the AF 302 may specifythe MediaComponent and MediaSubComponents. The MediaSubComponent may bemodified to include an optional attribute indicating whether theMediaSubComponent is for a source flow or an FEC flow. TheMediaSubComponent includes the fNum attribute, which is an ordinarynumber of IP flow. The fNum attribute may be used to refer from aMediaSubComponent carrying the FEC flow to the MediaSubComponentcarrying the source flow. The MediaSumComponent may include an attribute(e.g., fNumSource) and the value of this attribute would be fNum ofMediaSubComponent carrying the source flow.

In some embodiments, if the AF invokes anNpcf_PolicyAuthorization_Create request at the time when the SMFallocated resources for a multicast session and if the PCF decides thata modification is needed, then the PCF 312 invokes anNpcf_SMPolicyControl_UpdateNotify request. The PCF 312 provides the SMF308 with a policy and charging control (PCC) rule (PccRule) for one ormore source flows and a PCC rule for one or more FEC flows for thesource flows. In some embodiments, the PCC rule for FEC flows includes areference to the PCC rule for the source flows.

In some embodiments, the SMF 308 decides on QoS flow mapping. The PCCrules for source flows may be mapped to one QoS flow, that is, allsource flows are aggregated, if the flows have some QoS characteristics.Similarly, the PCC rules for FEC flows may be mapped to one QoS flow.The SMF may also map one PCC rule to one QoS flow. In some embodiments,the maximum number of flows per PDU session is currently 64.

In some embodiments, the SMF 308 may transmit an SMF message using oneof the three following options: N1N2MessageTransfer,NonUeN2MessageTransfer, or a McastContextMessageTransfer.

The N1N2MessageTransfer service operation is used by a network function(NF) Service Consumer to transfer N1 and/or N2 information to the UEand/or 5G-AN through the AMF. The SMF may initiate the procedure for allimpacted PDU sessions. The SMF initiates Namf_N1N2MessageTransfer as perthe PDU Session Modification procedure specified in 3GPP TS 23.502. TheAMF may initiate the PDU Session Resource Modify procedure of NGAP (nextgeneration application protocol) over the N2 interface by sending a PDUSESSION RESOURCE MODIFY REQUEST containing the PDU Session ResourceSetup Request Transfer IE in which the list of QoS flows for a PDUsession is provided. A list of QoS flows for multicast which is newcompared to a conventional implementation is included in the message.Each entry in the list represents the QoS flows for FEC flows and caninclude a reference (QoS Flow Id) to the corresponding QoS flow forsource flows.

In some embodiments, the NonUeN2MessageTransfer is used by a NF ServiceConsumer to transfer N2 information to the 5G-AN through the AMF forobtaining non-UE associated network assistance data per 3GPP TS 23.502or Warning Request Transfer procedures per 3GPP TS 23.041. TheNonUeN2MessageTransfer uses Tracking Area Identities (TAI)s, NR (NewRadio) Cell Global Identifiers (NCGI)s, and global RAN node IDs forrouting N2 messages to the RAN nodes. The SMF 308 would need to obtainthe TAIs, NCGIs or global RAN node IDs serving UEs that would receivethe multicast. Accordingly, in some embodiments, the N2 message mayinclude a multicast context ID and QoS flows configuration as discussedabove for the N1N2MessageTransfer case.

In some embodiments, new resource in the AMF application programinterface (API) definition for multicast contexts (e.g.,/multicast-contexts) may also be introduced. In some embodiments, theSMF 308 initiates a multicast context modification procedure (e.g., anMcastContextMessageTransfer request by HTTP POST to/multicast-contexts/multicastContextId}). In some embodiments, themulticast context ID may be an IP multicast group defined by an IPmulticast address for any source multicast or by IP multicast addressand source multicast addresses for a source specific multicast. Themulticast context ID may be a temporary ID allocated for a multicastgroup. The AMF 310 forwards the N2 message, which would include themulticast context ID and the list of QoS flows, to RAN node(s) 306serving the multicast context.

In some embodiments, upon the reception of the information about QoSflows carrying application source flows and corresponding FEC flows, theRAN 306 can decide to not transmit the QoS flow carrying application FECflows when the (R)AN decides to transmit data to the UE using unicastbearers that use HARQ or RLC retransmissions.

FIG. 4 is an information flow diagram illustration of theabove-mentioned provisioning of information between the entitiesdescribed in conjunction with FIG. 3 in accordance with an exampleembodiment of the present disclosure. In operation 14 of FIG. 4, themulticast data is delivered to NG-RAN over a data tunnel. In someembodiments, the decision to transmit the QoS flow carrying applicationFEC flows or not is done above the RLC layer, e.g., in the protocolentity where the dynamic selection is made between unicast and multicastRLC entities and transport channels for the transmission. Consequently,in some embodiments, in the case of the central unit (CU)/distributedunit (DU) split architecture with F1 front haul interface, the decisionfunctionality may be included in the DU and carry the decision to not totransmit FEC flow for unicast. At least the QoS flow payload type, theone or more sets of QoS parameters and the relation between QoS flowsare provided over the F1 interface to the DU.

In some embodiments, if a network node (e.g., DU) is responsible for anddecides to deliver multicast data over unicast to all UEs interested inthe reception of the multicast data using only QoS flows carryingapplication source flows, then the network node may notify an upstreamnetwork node (e.g. CU) about the decision. The notification may includeidentities of QoS flows carrying application source flows. Uponreceiving such notification, the upstream network node may decide not totransmit QoS flows carrying FEC flows. When the network node laterdecides to transmit multicast data using a multicast/broadcasttransmission and the upstream network node suspended transmission of FECflows, the network node may request the upstream node to transmit QoSflows carrying FEC flows.

FIGS. 5A and 5B illustrate delivery of a data stream in a distributedRAN and a centralized RAN in accordance with an example embodiment ofthe present disclosure. With a distributed RAN illustrated in FIG. 5A,the Next generation NodeB (gNB) has the capability to decide theover-the-air transmission mode. The gNB-DU would have the capability todecide the over-the-air transmission mode in the centralized RANscenario illustrated in FIG. 5B. The gNB-DU would also transmit FECflows only in case a multicast mode is used. For the unicast scenario,this saves a significant amount of radio resources, while providinghigher flexibility to the RAN.

FIGS. 6A and 6B illustrate an updated architecture of a 5G radioprotocol stack in accordance with an example embodiment of the presentdisclosure. In some embodiments, the DU-1/gNB-1 will schedule the sourceand FEC flows using Xcast radio bearers with multicast transmissionsover-the-air. DU-2/gNB-2 will be able to drop the FEC flow and scheduleonly the source flow using unicast transmissions over-the-air. Suchflows may be multiplexed with other existing unicast flows within thegNB/DU.

Such an implementation enables more optimal transmission of multicastdata by RAN because application layer FEC is not transmitted overunicast bearers but more efficient lower layer techniques (e.g., HARQand/or RLC retransmissions, link adaptation). In addition, the QoS flowfor application source flow may have more than one QoS profiles (e.g.,one QoS profile for multicast when FEC is also transmitted and one QoSprofile for unicast when no application layer FEC is used because no FECdata are transmitted (the layer implementing the application layer FECperceives the system as all FEC data are lost in the network).

Turning now to FIG. 7, the operations performed by the RAN 306 which maybe embodied by the apparatus illustrated in FIG. 1 in accordance with anexample embodiment are illustrated. As shown in block 700, the RAN 306includes means, such as the communication interface 16 and/or theprocessing circuitry 12, for receiving an application flow comprising asource flow and a supplementary flow from a core network. In someembodiments, the application flow may comprise QoS source flows andrepair flows, described in conjunction with FIG. 3. As previouslydescribed in conjunction with FIG. 3, the application flow may bereceived from the UPF 304 in FIG. 3. In some embodiments, there may bemore than one supplementary flow which may all be included in a QoS flowlist described in conjunction with FIG. 3. The operations 704 to 708 maybe performed for each of the supplementary flows.

As shown in block 702, the RAN 306 includes means, such as thecommunication interface 16 and/or the processing circuitry 12, forreceiving a flow payload indication from the core network. In someembodiments, the flow payload indication may take the form of the N2message described in conjunction with FIG. 3. As previously described inconjunction with FIG. 3, the flow payload indication may be receivedfrom the AMF 310 in FIG. 3, for example, originated from the SMF andtransferred to the RAN 306 via the AMF. The SMF may determine whatpayload indication to use based on various information sources, forexample. a reference between policy and charging control rules for asource flow and a supplementary flow, received from the PCF.

As shown in block 704, the RAN 306 includes means, such as the theprocessing circuitry 12, for determining whether the application flow isto be transmitted via a unicast transmission or a multicasttransmission.

As shown in block 706, the RAN 306 includes means, such as theprocessing circuitry 12, for determining whether the supplementary flowis droppable based on the flow payload indication. In some embodiments,the RAN 306 determines whether the supplementary flow is droppable basedon the flow payload indication by parsing an indication of whether thesupplementary flow is a repair flow, or the like, from the flow payloadindication. In addition, the the RAN 306 determines whether thesupplementary flow is droppable based by determining whether theapplication flow is to be transmitted via a unicast transmission or amulticast transmission. For example, in some embodiments, if thesupplementary flow is a repair flow and if the application flow is to betransmitted via a unicast transmission, the RAN 306 would determine thatthe supplementary flow is droppable. Certain examples of suchembodiments utilize lower layer error correction mechanisms, such asHARQ, RLC, or other retransmission mechanisms, for the unicasttransmission.

In some embodiments, if the supplementary flow is a repair flow and ifthe application flow is to be transmitted via a multicast transmissionwhere lower layer error correction mechanisms, such as HARQ, RLC, orother retransmission mechanisms may be utilized by the multicasttransmission, the RAN 306 would determine that the supplementary flow isdroppable.

As shown in block 708, the stream registry 204 includes means, such asthe communication interface 16 and/or the processing circuitry 12, fortransmitting only the source flow in a circumstance where thesupplementary flow is droppable.

As described above, FIG. 7 is a flowchart of an apparatus 10, method,and computer program product according to certain example embodiments.It will be understood that each block of the flowchart, and combinationsof blocks in the flowchart, may be implemented by various means, such ashardware, firmware, processor, circuitry, and/or other devicesassociated with execution of software including one or more computerprogram instructions. For example, one or more of the proceduresdescribed above may be embodied by computer program instructions. Inthis regard, the computer program instructions which embody theprocedures described above may be stored by a memory device 14 of anapparatus employing an embodiment of the present invention and executedby processing circuitry 12 of the apparatus. As will be appreciated, anysuch computer program instructions may be loaded onto a computer orother programmable apparatus (e.g., hardware) to produce a machine, suchthat the resulting computer or other programmable apparatus implementsthe functions specified in the flowchart blocks. These computer programinstructions may also be stored in a computer-readable memory that maydirect a computer or other programmable apparatus to function in aparticular manner, such that the instructions stored in thecomputer-readable memory produce an article of manufacture, theexecution of which implements the function specified in the flowchartblocks. The computer program instructions may also be loaded onto acomputer or other programmable apparatus to cause a series of operationsto be performed on the computer or other programmable apparatus toproduce a computer-implemented process such that the instructions whichexecute on the computer or other programmable apparatus provideoperations for implementing the functions specified in the flowchartblocks.

A computer program product is therefore defined in those instances inwhich the computer program instructions, such as computer-readableprogram code portions, are stored by at least one non-transitorycomputer-readable storage medium with the computer program instructions,such as the computer-readable program code portions, being configured,upon execution, to perform the functions described above, such as inconjunction with the flowchart of FIG. 7. In other embodiments, thecomputer program instructions, such as the computer-readable programcode portions, need not be stored or otherwise embodied by anon-transitory computer-readable storage medium, but may, instead, beembodied by a transitory medium with the computer program instructions,such as the computer-readable program code portions, still beingconfigured, upon execution, to perform the functions described above.

Accordingly, blocks of the flowchart support combinations of means forperforming the specified functions and combinations of operations forperforming the specified functions for performing the specifiedfunctions. It will also be understood that one or more blocks of theflowchart, and combinations of blocks in the flowchart, may beimplemented by special purpose hardware-based computer systems whichperform the specified functions, or combinations of special purposehardware and computer instructions.

In some embodiments, certain ones of the operations above may bemodified or further amplified. Furthermore, in some embodiments,additional optional operations may be included, such as represented bythe blocks outlined in dashed lines. Modifications, additions, oramplifications to the operations above may be performed in any order andin any combination.

Many modifications and other embodiments of the inventions set forthherein will come to mind to one skilled in the art to which theseinventions pertain having the benefit of the teachings presented in theforegoing descriptions and the associated drawings. Therefore, it is tobe understood that the inventions are not to be limited to the specificembodiments disclosed and that modifications and other embodiments areintended to be included within the scope of the appended claims.Moreover, although the foregoing descriptions and the associateddrawings describe example embodiments in the context of certain examplecombinations of elements and/or functions, it should be appreciated thatdifferent combinations of elements and/or functions may be provided byalternative embodiments without departing from the scope of the appendedclaims. In this regard, for example, different combinations of elementsand/or functions than those explicitly described above are alsocontemplated as may be set forth in some of the appended claims.Although specific terms are employed herein, they are used in a genericand descriptive sense only and not for purposes of limitation.

1-20. (canceled)
 21. A method comprising: receiving an application flowcomprising a source flow and a supplementary flow from a core network;receiving a flow payload indication from the core network; determiningwhether the application flow is to be transmitted via a unicasttransmission or a multicast transmission; determining whether thesupplementary flow is droppable based on the flow payload indication andwhether the application flow is to be transmitted via a unicasttransmission or a multicast transmission; and in a circumstance wherethe supplementary flow is droppable, causing only the source flow to betransmitted.
 22. A method according to claim 21 wherein the applicationflow is received from a user plane function (UPF) in the core network.23. A method according to claim 21 wherein determining whether thesupplementary flow is droppable comprises parsing an indication ofwhether the supplementary flow is a repair flow from the flow payloadindication.
 24. A method according to claim 21 wherein the supplementaryflow is droppable if the supplementary flow is a forward errorcorrection repair flow and if the application flow is to be transmittedvia a unicast transmission.
 25. A method according to claim 21 whereinthe unicast transmission utilizes hybrid automatic repeat request (HARQ)retransmission or radio link control (RLC) retransmission.
 26. A methodaccording to claim 21 wherein the supplementary flow is droppable in aninstance in which the supplementary flow is a repair flow and theapplication flow is to be transmitted via a multicast transmission witha lower level error correction mechanism utilized by the multicasttransmission.
 27. A method according to claim 21 wherein the flowpayload indication comprises one or more policy and charging control(PCC) rules provided by a policy control function.
 28. An apparatuscomprising at least one processor and at least one memory includingcomputer program code for one or more programs, the at least one memoryand the computer program code configured to, with the at least oneprocessor, cause the apparatus at least to: receive an application flowcomprising a source flow and a supplementary flow from a core network;receive a flow payload indication from the core network; determinewhether the application flow is to be transmitted via a unicasttransmission or a multicast transmission; determine whether thesupplementary flow is droppable based on the flow payload indication andwhether the application flow is to be transmitted via a unicasttransmission or a multicast transmission; and in a circumstance wherethe supplementary flow is droppable, cause only the source flow to betransmitted.
 29. An apparatus according to claim 28 wherein theapplication flow is received from a user plane function (UPF) in thecore network.
 30. An apparatus according to claim 28 wherein the atleast one memory and the computer program code are configured to, withthe at least one processor, cause the apparatus to determine whether thesupplementary flow is droppable by parsing an indication of whether thesupplementary flow is a repair flow from the flow payload indication.31. An apparatus according to claim 28 wherein the supplementary flow isdroppable if the supplementary flow is a forward error correction repairflow and if the application flow is to be transmitted via a unicasttransmission.
 32. An apparatus according to claim 31 wherein the unicasttransmission utilizes hybrid automatic repeat request (HARQ)retransmission or radio link control (RLC) retransmission.
 33. Anapparatus according to claim 28 wherein the supplementary flow isdroppable in an instance in which the supplementary flow is a repairflow and the application flow is to be transmitted via a multicasttransmission with a lower level error correction mechanism utilized bythe multicast transmission.
 34. An apparatus according to claim 28wherein the flow payload indication comprises one or more policy andcharging control (PCC) rules provided by a policy control function. 35.A computer program product comprises at least one non-transitorycomputer-readable storage medium having computer executable program codeinstructions stored therein, the computer executable program codeinstructions comprising program code instructions configured, uponexecution, to: receive an application flow comprising a source flow anda supplementary flow from a core network; receive a flow payloadindication from the core network; determine whether the application flowis to be transmitted via a unicast transmission or a multicasttransmission; determine whether the supplementary flow is droppablebased on the flow payload indication and whether the application flow isto be transmitted via a unicast transmission or a multicasttransmission; and in a circumstance where the supplementary flow isdroppable, cause only the source flow to be transmitted.
 36. A computerprogram product according to claim 35 wherein the application flow isreceived from a user plane function (UPF) in the core network.
 37. Acomputer program product according to claim 35 wherein the supplementaryflow is droppable if the supplementary flow is a forward errorcorrection repair flow.
 38. A computer program product according toclaim 35 wherein the supplementary flow is droppable if thesupplementary flow is a forward error correction repair flow and if theapplication flow is to be transmitted via a unicast transmission.
 39. Acomputer program product according to claim 38 wherein the unicasttransmission utilizes hybrid automatic repeat request (HARQ)retransmission or radio link control (RLC) retransmission.
 40. Acomputer program product according to claim 35 wherein the flow payloadindication comprises one or more policy and charging control (PCC) rulesprovided by a policy control function.